// pages/category/category.js
import { request } from '../../request/index.js'
import regeneratorRuntime from '../../lib/runtime/runtime';//不能全局引入，使用es7语法的async地方引用
Page({

  /**
   * 页面的初始数据
   */
  data: {
    Cateslist:[],
    letfmenulist:[],
    rightcontentlist:[],
    currentIndex:0,
    scrolltop:0

  },
  Cates:[],//接口的返回数据
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    // 判断存储有没有旧数据，又使用旧数据不用再次请求优化性能 数据量太大
    const cates = wx.getStorageSync('cates')
    if (!cates){
      this.getCates()
    }else{
      if(Date.now()-cates.time>1000*10){
        this.getCates()//十秒过期重新发请求

      }else{
        this.Cates=cates.data
        let leftmenu = this.Cates.map(v => v.cat_name)
        let rightcontent = this.Cates[0]['children']
        this.setData({
          Cateslist: this.Cates,
          letfmenulist: leftmenu,
          rightcontentlist: rightcontent
        })
      }

    }

  },
  handleitem(e){
    //  获取点击标题身上的索引参数index
    const {index} = e.currentTarget.dataset
    let rightcontent = this.Cates[index]['children']
    this.setData({
      currentIndex:index,
      rightcontentlist: rightcontent,
      scrolltop:0
    })

  },
  async getCates(){
    // request({
    //   url: 'https://api-hmugo-web.itheima.net/api/public/v1/categories',
    // }).then(res => {
    //    this.Cates=res.data.message;
    //    wx.setStorageSync('cates', {time:Date.now(),data:this.Cates})
    //    let leftmenu= this.Cates.map(v=>v.cat_name)
    //   let rightcontent = this.Cates[0]['children']
    //    this.setData({
    //      Cateslist: this.Cates,
    //      letfmenulist: leftmenu,
    //      rightcontentlist: rightcontent
    //    })

    // })
   const res= await request({
      url: 'https://api-hmugo-web.itheima.net/api/public/v1/categories',
    })

        this.Cates=res.data.message;
       wx.setStorageSync('cates', {time:Date.now(),data:this.Cates})
       let leftmenu= this.Cates.map(v=>v.cat_name)
      let rightcontent = this.Cates[0]['children']
       this.setData({
         Cateslist: this.Cates,
         letfmenulist: leftmenu,
         rightcontentlist: rightcontent
       })
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})